/*
Autor: Jonathan Vindas Abarca
Fecha: 13/07/2012
Descripción: Este archivo contiene funciones javascript para la vista listarLinea.php, 
hace uso de controlesDinamicos.js para crear etiquetas HTML dinamicamente.
Bitacora de modificaciones:
<
    Autor: 
    Fecha: 
    Descripción: 
>
*/
function activarPrecioEspecial(tr){
    var txtCantidad=document.getElementById("txtCantidad");
    var txtPrecioUnitario=document.getElementById("txtPrecioUnitario");  
    var txtMontoTotal=document.getElementById("txtMontoTotal");
    /*
     Cambios antes de hacer modificacion para digitar valor en campo de txtPrecioUnitario 
     txtPrecioUnitario.disabled=true;
    //txtPrecioUnitario.value=0;
    */
    txtCantidad.value=0;
    txtCantidad.disabled=false;    
    txtPrecioUnitario.disabled=false;
    txtMontoTotal.disabled=true;
    //txtCantidad.value=0;
    //txtPrecioUnitario.value=0;
    toString("activarPrecioEspecial", "activarPrecioEspecial");
    toString("valortxtcantidad", txtPrecioUnitario.value);
}

function calcularMontoTotal(){
    var precioUnitario=document.getElementById("txtPrecioUnitario").value;;
    var cantidad=document.getElementById("txtCantidad").value;    	
    document.getElementById("txtMontoTotal").value=precioUnitario*cantidad;
}

function editarFilaLinea(tr){    
    var tienePermiso=obtenerPermisoGenerico('obtenerPermisoGenerico','modificarLinea');
    if(tienePermiso==1)
    {
    toString("editarFilaLinea", "editarFilaLinea");
    var tds=tr.getElementsByTagName("td");       
    var codigoGuia=tds[0].innerHTML;
    var hddEmbalaje=tds[1].getElementsByTagName("input");          
    var codigoEmbalaje=hddEmbalaje[0].value;
    var cantidad=tds[2].innerHTML;
    //var precioUnitario=parseFloat(tds[3].innerHTML);
    var precioUnitario=tds[3].innerHTML;
    toString("precioUnitario", precioUnitario);
    var total=tds[4].innerHTML;        
    var numeroLinea=hddEmbalaje[1].value;
    toString("codigoGuia",codigoGuia );
    toString("codigoEmbalaje", codigoEmbalaje);
    toString("cantidad", cantidad);
    toString("precio", precioUnitario);
    toString("montoTotal", total);
    toString("numeroLinea", numeroLinea);
    tds[2].innerHTML='';    
    var txtCantidad=crearTextBox("txtCantidad","text",cantidad,"100px");  
    txtCantidad.maxLength =9;
    txtCantidad.onkeyup=function () {     
        //guardarGuiaModificada(codigoGuia, montoPagar);
        calcularMontoTotal();
    }
    tds[2].appendChild(txtCantidad);    
    if(precioUnitario==0.0000 || precioUnitario==.0000 || precioUnitario==0)//Es una linea con precio especial
    {
        txtCantidad.disabled=false;
    }       
    tds[3].innerHTML='';
    var txtPrecioUnitario=crearTextBox("txtPrecioUnitario","text",precioUnitario,"100px");  
    txtPrecioUnitario.onkeyup=function () {     
        //guardarGuiaModificada(codigoGuia, montoPagar);
        calcularMontoTotal();
    }
    txtPrecioUnitario.disabled=true;
    tds[3].appendChild(txtPrecioUnitario);   
    tds[4].innerHTML='';
    var txtMontoTotal=crearTextBox("txtMontoTotal","text",total,"100px");  
    txtMontoTotal.disabled=true;
    tds[4].appendChild(txtMontoTotal);      
    /*if(precioUnitario!=0.0000 || precioUnitario!=.0000)//Es una linea con precio calculado
    {
        txtMontoTotal.disabled=true;
        //txtMontoTotal.disabled=false;
        console.log('bloquear monto total');
    }*/
    tds[5].removeChild(tds[5].lastChild);        
    tds[6].removeChild(tds[6].lastChild);        
    tds[7].removeChild(tds[7].lastChild);     
    //se crea la imagen
    var nuevaImg=document.createElement("img");
    nuevaImg.src='../vistas/Imagenes/Guardar.png';
    //se crea el link
    var linkAgregar = document.createElement("a");             
    linkAgregar.id="linkBotonModificarLinea";    
    linkAgregar.appendChild(nuevaImg);
    tds[5].appendChild(linkAgregar);
    linkAgregar.onclick = function () {     
        guardarLineaModificada(codigoGuia, codigoEmbalaje, numeroLinea);
    }   
    txtMontoTotal.maxLength =9;
    console.log('precio unitario: '+precioUnitario);
    }
    else
    {
        alert('Su usuario no posee permisos para esta accion.');
    }
}

function guardarLineaModificada(codigoGuia, codigoEmbalaje,numeroLinea){    
    var link=document.getElementById("linkBotonModificarLinea");        
    var txtCantidad=document.getElementById("txtCantidad").value;    
    var txtPrecioUnitario=document.getElementById("txtPrecioUnitario").value;        
    var txtMontoTotal=document.getElementById("txtMontoTotal").value;         
    if(txtMontoTotal != '' && txtPrecioUnitario != '' && txtMontoTotal != ''){
    link.href="../vistas/paginaPrincipal.php?accion=modificarLineas&controlador=lineas&codigoGuia="+codigoGuia+"&codigoEmbalaje="+codigoEmbalaje+"&txtCantidad="+txtCantidad+"&txtPrecioUnitario="+txtPrecioUnitario+"&txtMontoTotal="+txtMontoTotal+"&numeroLinea="+numeroLinea;
    }
    else{
        alert("Campos vacios");
    }
}

function guardarLinea(tr){
    //alert("guardarLinea");
    var tds = tr.getElementsByTagName("td");
    var codigoGuia = tds[0].innerHTML;   
    
    var comboEmbalaje = tds[1].getElementsByTagName("select");
    var opciones=comboEmbalaje[0].options;
    var index=comboEmbalaje[0].selectedIndex;  
    var codigoEmbalaje=opciones[index].value;
    
    var cantidad = tds[2].getElementsByTagName("input");    
    var precioUnitario = tds[3].getElementsByTagName("input");    
    var montoTotal = tds[4].getElementsByTagName("input");    
    
    var link=document.getElementById("linkBotonAgregarLinea");     
    link.href="../vistas/paginaPrincipal.php?accion=agregarLineaDesdeTabla&controlador=lineas&codigoGuia="+codigoGuia+"&codigoEmbalaje="+codigoEmbalaje+"&cantidad="+cantidad[0].value+"&precioUnitario="+precioUnitario[0].value+"&montoTotal="+montoTotal[0].value;           
}

function mostrarPrecioSegunEmbalaje(cmb){
    toString("mostrarPrecioSegunEmbalaje","mostrarPrecioSegunEmbalaje");
    var embalaje=cmb.value;
    var codigoGuia=document.getElementById("hddGuia").value;
    //toString("localidad", localidad);
    toString("codigoGuia", codigoGuia);    
    var accion='mostrarPrecioSegunEmbalaje';
            $.get("../controladores/ajaxControlador.php",{accion:accion,embalaje:embalaje,codigoGuia:codigoGuia},function(resultado){
                //var resultado=true;
                if(resultado == false)
                {
                    alert("Este embalaje no tiene un precio establecido, por favor registre este precio.");
                }
                else
                {                                  
                    $("#txtPrecioUnitario").attr("value",resultado);                                       
                }                                
            }	);
}


